Qt for Symbian: QCameraExample v1.1
===================================

This Qt C++ application demonstrates how to use Multimedia, Messaging, and 
Contacts modules from QtMobility.

The application shows the viewfinder picture from the device camera and allows 
the user to capture images. Captured images are stored in the gallery and can 
be sent as an MMS message to a friend. The application listens for incoming 
MMS messages in the Inbox folder. If an MMS message contains a picture, the 
application asks the user whether he or she wants to add the picture as an 
avatar of the sender. The person's general contact information must exist in 
the device phonebook in order to store the avatar in it.

The application uses its own MyVideoSurface video surface derived from 
QAbstractVideoSurface for showing camera viewfinder pictures. A video surface 
presents a continuous stream of identically formatted frames.

The application handles Graphics Out Of Memory (GOOM) events in its 
QApplication::symbianEventFilter() method. Read more about GOOM (Graphics 
memory handling) at:  
http://wiki.forum.nokia.com/index.php/Graphics_memory_handling



PREREQUISITES
-------------------------------------------------------------------------------

- Qt basics


IMPORTANT FILES/CLASSES
-------------------------------------------------------------------------------

- cameraexample.h : QMainWindow that shows the camera viewfinder picture
- button.h : Exit, Capture picture, and Send MMS buttons
- contactsdlg.h : Contacts dialog
- messagehandling.h : MMS message listening and sending
- businesscardhandling.h : Storing avatar picture into contact

Important QtMobility classes: QCamera, QAbstractVideoSurface, 
QCameraImageCapture, QSystemScreenSaver, QVideoRendererControl, 
QVideoSurfaceFormat, QContactManager, QContact, QMessage, QMessageManager, 
QMessageService.


REQUIRED CAPABILITIES
-------------------------------------------------------------------------------

The application can be self-signed.

After enabling the Qt Mobility Messaging module (MESSAGING_ENABLED flag in 
.pro file) from the project file, ReadDeviceData and WriteDeviceData 
capabilities are also needed and the application must be Developer Signed at: 
https://www.symbiansigned.com/app/page/public/openSignedOnline.do


KNOWN ISSUES
-------------------------------------------------------------------------------

Avatar picture storing does not work.


BUILD & INSTALLATION INSTRUCTIONS
-------------------------------------------------------------------------------

Preparations
~~~~~~~~~~~~
Check that you have at least the latest Qt/Qt SDK installed in the development 
environment and on the device.

Build & installation instructions using Qt SDK
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1. Open qcamera.pro
   File > Open File or Project, select qcamera.pro.

2. Select target(s), for example 'Qt for Symbian^3 (Qt SDK)', and 
   press the Finish button.

3. Press the Run button to build the project and create the qcamera.sis 
   Symbian install package. The application is installed on the device.

(4.) If you create an unsigned SIS that uses the Messaging module, it must be 
     signed using Open Signed Online:
     https://www.symbiansigned.com/app/page/public/openSignedOnline.do


COMPATIBILITY
-------------------------------------------------------------------------------

- Symbian Anna
- Qt 4.7.4. and QtMobility 1.2.1. 

Tested on: 
- Nokia N8-00
- Nokia E7-00

Developed with:
- Qt SDK 1.1.4


CHANGE HISTORY
-------------------------------------------------------------------------------

1.1 Qt Mobility 1.1 support. Custom video surface derived from 
    QAbstractVideoSurface for showing camera viewfinder pictures.

1.0 First version


RELATED DOCUMENTATION
-------------------------------------------------------------------------------

GOOM (Graphics memory handling) 
http://wiki.forum.nokia.com/index.php/Graphics_memory_handling

New Qt APIs - Qt Mobility
http://qt.nokia.com/products/qt-addons/mobility

Qt for Symbian
http://qt.nokia.com/downloads

Symbian Open Signed Online
https://www.symbiansigned.com/app/page/public/openSignedOnline.do